package cn.wolfcode.shop.cloud.service;

import cn.wolfcode.shop.cloud.vo.SeckillGoodVo;

import java.util.List;

/**
 * Created by wolfcode-lanxw
 */
public interface ISeckillGoodService {

    /**
     * 用于查询秒杀商品列表
     * @return
     */
    List<SeckillGoodVo> listAll();

    /**
     * 从缓存中查询秒杀商品列表
     * @return
     */
    List<SeckillGoodVo> queryByCache();

    /**
     * 查询秒杀商品详情
     * @param id
     * @return
     */
    SeckillGoodVo findById(Long id);

    /**
     * 在缓存中查询秒杀详情信息
     * @return
     */
    SeckillGoodVo findByCache(Long id);

    /**
     * 扣库存, 每次扣除 1 个库存
     * @param seckillId
     */
    int decrStockCount(Long seckillId);

    /**
     * 增加库存, 每次增加 1 个库存
     * @param seckillId
     */
    void incrStockCount(Long seckillId);
}
